package clases;

import java.util.ArrayList;

import es.deusto.ingenieria.is.search.formulation.State;

public class Entorno extends State implements Cloneable {

	private ArrayList<Soporte> soportes;

	public Entorno() {
		super();
	}

	public Entorno(ArrayList<Soporte> soportes) {
		super();
		this.soportes = soportes;
	}

	@Override
	public boolean equals(Object entorno) {
		ArrayList<Soporte> soportes2 = ((Entorno) entorno).getSoportes();
		int i = 0;
		for (Soporte soporte : soportes2) {
			if (soporte.equals(getSoportes().get(i))) {
				i++;
			}
			else {
				return false;
			}
		}
		return true;
	}

	@Override
	public String toString() {
		String respuesta = "";
		for (Soporte soporte : soportes) {
			respuesta = respuesta + " " + soporte.toString();
		}
		return "\r\n" + respuesta + "\r\n";
	}

	public ArrayList<Soporte> getSoportes() {
		return soportes;
	}

	public void setSoportes(ArrayList<Soporte> soportes) {
		this.soportes = soportes;
	}

	@Override
	public Entorno clone() {
		Entorno entornoNuevo = new Entorno();
		ArrayList<Soporte> soportesNuevos = new ArrayList<Soporte>();
		for (Soporte soporte : soportes) {
			soportesNuevos.add(soporte.clone());
		}
		entornoNuevo.soportes = soportesNuevos;
		return entornoNuevo;
	}
}
